
CFLAGS = -O0 -g -Wall -fPIC -D_GNU_SOURCE

all: libkvdb.so kv
libkvdb.so: Makefile kvdb.c cache.c allocator.c inner.h kvdb.h
	gcc -c $(CFLAGS) -o kvdb.o kvdb.c 
	gcc -c $(CFLAGS) -o cache.o cache.c
	gcc -c $(CFLAGS) -o allocator.o allocator.c
	gcc -g -shared -fPIC kvdb.o cache.o allocator.o -o libkvdb.so

kv: main.c Makefile kvdb.c cache.c allocator.c crc64.c inner.h kvdb.h
	gcc -D_GNU_SOURCE -g -O0 main.c kvdb.c cache.c allocator.c crc64.c -o kv 

install:
	cp -f libkvdb.so /root/kvtest/src/kvtest/cdb
	cp -f kvdb.h /root/kvtest/src/kvtest/cdb

clean:
	rm -f *.o *.so kv aaa.db

